// JavaScript Document
//////////////////////// Cargar Resultados en una tabla  ////////////////////////

function tabla_cargada(buscar, valor, ordenar_campo, limites)
{

  ocultar_form();
  // envia unos parametros post para cargar json y crear la tabla
  $.post('libreria_php/genera_consulta_json.php', {
    tabla: tabla_usuario,
    campos: campo,
    campo_buscar: buscar,
    valor_buscar: valor,
    ordenar: ordenar_campo,
    limite: limites
  }, function(data)
  {
    $("#paginacion").remove();
	$("#ordenar_limites").append('<div id="paginacion" align="center"></div>');
      var valor = data.total_registros;
      document.getElementById('total_registros').value = valor;
    /* lineas para realizar combo y paginacion	  */
    
    var j = 0;
    var paginas = 1;
    x = Number(valor) / intervalo_limite;
    limitantes = Math.ceil(x);
    //console.log('Limite Principal: '+limitante);
    //console.log('Numero Registros: '+valor);
    console.log('consulta:' + data.sql);
	
	$("#paginacion").append('<div class="pagination"> ');	
   // $("#todos_registros_link").remove();
   
	// agrega paginacion
    for (i = intervalo_limite; i <= (limitantes * intervalo_limite); i += intervalo_limite)
    {
      //$("#limites_tabla_cargada").append("<option value='"+j+", "+intervalo_limite+"'>"+j+" - "+i+"</option>");
      $(".pagination").append('<ul><li><a href="javascript:void(0)" onclick="tabla_cargada(\'\' , \'\' , \'\' , \' ' + j + ', ' + intervalo_limite + ' \')   " >' + paginas + '</a></li></ul>');
      j = i;
      paginas++;
    }
	
	$("#paginacion").append(' </div>');	
	
	// mostrar todos los registros
	 //   $("#ordenar_limites").append('<a href="javascript:void(0)" id="todos_registros_link" onclick="tabla_cargada(\'\' , \'\' , \'\' , \' ' + limitante + ' \')" >[ Todos ] </a>'); /* terminar  realizar la paginacion       */
    
	// remueve si existe para que no duplique registros
	$("#titulo_columna").remove();
    $("#tbody").remove();
	
	// crear encabezado de la tabla
    $("#myTable").append("<thead id='titulo_columna'>");
    $("thead").append("<tr id='nombre_columna' >");

    

  	// nombres de los encabezados de las columnas
    var cantidades = 0;
    $.each(data.registros[0], function(id, valor)
    {
      renombrar_campos(id, campos_reemplazar[cantidades], campos_reemplazado[cantidades]);
      cantidades++;
    });
	
    $("#nombre_columna").append("<td> <a  href='#ocultar' onClick='mostrar_agregar(this.title);'  role='button' class='icon-plus' data-toggle='modal' title='Agregar'></a> </td>");
    $("thead").append("</tr>");
    $("thead").append("</thead>");
    $("#myTable").append("<tbody  id='tbody'>");
    // genera el numero de array
    var num = data.registros.length;
    // ciclo for desde 0 hasta el numero array devuelto
    for (i = 0; i < num;)
    {
      // agrege una columna
      $("#tbody").append("<tr id='" + i + "' >");
      // recorreo el array y agrega filas con el resultado
      $.each(data.registros[i], function(id, valor)
      {
        $("#" + i).append("<td id='" + i + "' class='" + id + "'> " + valor + "</td>");
      });
      // se crear una celda para Editar
      $("#" + i).append("<td> <a href='#ocultar' onClick='buscar_registro(" + data.registros[i].id + ");'  role='button' class='icon-edit' data-toggle='modal' title='Editar'> </a> </td>");
      // se crear una celda para eliminar
      $("#" + i).append("<td> <a  role='button' class='icon-remove' title='Eliminar' data-toggle='modal' onClick='elimina_registro(" + data.registros[i].id + ");'>  </a> </td>");
	  // cierra columna
      $("#tbody").append("</tr>");
      i++;
    } // se cierra el ciclo for
    $("thead").append("</tbody>");
  }, "json") // se cierra el post
  .done(function(req, status)
  {
  }).fail(function(data, status, readyState, responseText)
  {
    console.error("error" + +data.status);
    console.error(data.readyState);
    console.error(data.total_registros);
    console.error(data.responseText);
  }).always(function(req)
  {
    //	console.log("finished" + req);
  });
  return false;
}